home *** CD-ROM | disk | FTP | other *** search
/ Aminet 30 / Aminet 30 (1999)(Schatztruhe)[!][Apr 1999].iso / Aminet / dev / cross / GBDK-2.0.lha / GBDK / include / hardware.h < prev    next >
C/C++ Source or Header  |  1998-11-25  |  5KB  |  141 lines

  1. #ifndef _HARDWARE_H
  2. #define _HARDWARE_H
  3.  
  4. #define P1_REG        _reg_0x00    /* Joystick: 1.1.P15.P14.P13.P12.P11.P10 */
  5. #define SB_REG        _reg_0x01    /* Serial IO data buffer */
  6. #define SC_REG        _reg_0x02    /* Serial IO control register */
  7. #define DIV_REG        _reg_0x04    /* Divider register */
  8. #define TIMA_REG    _reg_0x05    /* Timer counter */
  9. #define TMA_REG        _reg_0x06    /* Timer modulo */
  10. #define TAC_REG        _reg_0x07    /* Timer control */
  11. #define IF_REG        _reg_0x0F    /* Interrupt flags: 0.0.0.JOY.SIO.TIM.LCD.VBL */
  12. #define NR10_REG    _reg_0x10    /* Sound register */
  13. #define NR11_REG    _reg_0x11    /* Sound register */
  14. #define NR12_REG    _reg_0x12    /* Sound register */
  15. #define NR13_REG    _reg_0x13    /* Sound register */
  16. #define NR14_REG    _reg_0x14    /* Sound register */
  17. #define NR21_REG    _reg_0x16    /* Sound register */
  18. #define NR22_REG    _reg_0x17    /* Sound register */
  19. #define NR23_REG    _reg_0x18    /* Sound register */
  20. #define NR24_REG    _reg_0x19    /* Sound register */
  21. #define NR30_REG    _reg_0x1A    /* Sound register */
  22. #define NR31_REG    _reg_0x1B    /* Sound register */
  23. #define NR32_REG    _reg_0x1C    /* Sound register */
  24. #define NR33_REG    _reg_0x1D    /* Sound register */
  25. #define NR34_REG    _reg_0x1E    /* Sound register */
  26. #define NR41_REG    _reg_0x20    /* Sound register */
  27. #define NR42_REG    _reg_0x21    /* Sound register */
  28. #define NR43_REG    _reg_0x22    /* Sound register */
  29. #define NR44_REG    _reg_0x23    /* Sound register */
  30. #define NR50_REG    _reg_0x24    /* Sound register */
  31. #define NR51_REG    _reg_0x25    /* Sound register */
  32. #define NR52_REG    _reg_0x26    /* Sound register */
  33. #define LCDC_REG    _reg_0x40    /* LCD control */
  34. #define STAT_REG    _reg_0x41    /* LCD status */
  35. #define SCY_REG        _reg_0x42    /* Scroll Y */
  36. #define SCX_REG        _reg_0x43    /* Scroll X */
  37. #define LY_REG        _reg_0x44    /* LCDC Y-coordinate */
  38. #define LYC_REG        _reg_0x45    /* LY compare */
  39. #define DMA_REG        _reg_0x46    /* DMA transfer */
  40. #define BGP_REG        _reg_0x47    /* BG palette data */
  41. #define OBP0_REG    _reg_0x48    /* OBJ palette 0 data */
  42. #define OBP1_REG    _reg_0x49    /* OBJ palette 1 data */
  43. #define WY_REG        _reg_0x4A    /* Window Y coordinate */
  44. #define WX_REG        _reg_0x4B    /* Window X coordinate */
  45. #define KEY1_REG    _reg_0x4D    /* CPU speed */
  46. #define VBK_REG        _reg_0x4F    /* VRAM bank */
  47. #define HDMA1_REG    _reg_0x51    /* DMA control 1 */
  48. #define HDMA2_REG    _reg_0x52    /* DMA control 2 */
  49. #define HDMA3_REG    _reg_0x53    /* DMA control 3 */
  50. #define HDMA4_REG    _reg_0x54    /* DMA control 4 */
  51. #define HDMA5_REG    _reg_0x55    /* DMA control 5 */
  52. #define RP_REG        _reg_0x56    /* IR port */
  53. #define BCPS_REG    _reg_0x68    /* BG color palette specification */
  54. #define BCPD_REG    _reg_0x69    /* BG color palette data */
  55. #define OCPS_REG    _reg_0x6A    /* OBJ color palette specification */
  56. #define OCPD_REG    _reg_0x6B    /* OBJ color palette data */
  57. #define SVBK_REG    _reg_0x70    /* WRAM bank */
  58. #define IE_REG        _reg_0xFF    /* Interrupt enable */
  59.  
  60. extern UBYTE P1_REG;
  61. extern UBYTE SB_REG;
  62. extern UBYTE SC_REG;
  63. extern UBYTE DIV_REG;
  64. extern UBYTE TIMA_REG;
  65. extern UBYTE TMA_REG;
  66. extern UBYTE TAC_REG;
  67. extern UBYTE IF_REG;
  68. extern UBYTE NR10_REG;
  69. extern UBYTE NR11_REG;
  70. extern UBYTE NR12_REG;
  71. extern UBYTE NR13_REG;
  72. extern UBYTE NR14_REG;
  73. extern UBYTE NR21_REG;
  74. extern UBYTE NR22_REG;
  75. extern UBYTE NR23_REG;
  76. extern UBYTE NR24_REG;
  77. extern UBYTE NR30_REG;
  78. extern UBYTE NR31_REG;
  79. extern UBYTE NR32_REG;
  80. extern UBYTE NR33_REG;
  81. extern UBYTE NR34_REG;
  82. extern UBYTE NR41_REG;
  83. extern UBYTE NR42_REG;
  84. extern UBYTE NR43_REG;
  85. extern UBYTE NR30_REG;
  86. extern UBYTE NR50_REG;
  87. extern UBYTE NR51_REG;
  88. extern UBYTE NR52_REG;
  89. extern UBYTE LCDC_REG;
  90. extern UBYTE STAT_REG;
  91. extern UBYTE SCY_REG;
  92. extern UBYTE SCX_REG;
  93. extern UBYTE LY_REG;
  94. extern UBYTE LYC_REG;
  95. extern UBYTE DMA_REG;
  96. extern UBYTE BGP_REG;
  97. extern UBYTE OBP0_REG;
  98. extern UBYTE OBP1_REG;
  99. extern UBYTE WY_REG;
  100. extern UBYTE WX_REG;
  101. extern UBYTE KEY1_REG;
  102. extern UBYTE VBK_REG;
  103. extern UBYTE HDMA1_REG;
  104. extern UBYTE HDMA2_REG;
  105. extern UBYTE HDMA3_REG;
  106. extern UBYTE HDMA4_REG;
  107. extern UBYTE HDMA5_REG;
  108. extern UBYTE RP_REG;
  109. extern UBYTE BCPS_REG;
  110. extern UBYTE BCPD_REG;
  111. extern UBYTE OCPS_REG;
  112. extern UBYTE OCPD_REG;
  113. extern UBYTE SVBK_REG;
  114. extern UBYTE IE_REG;
  115.  
  116. extern UBYTE _reg_0x10;
  117. extern UBYTE _reg_0x11;
  118. extern UBYTE _reg_0x12;
  119. extern UBYTE _reg_0x13;
  120. extern UBYTE _reg_0x14;
  121. extern UBYTE _reg_0x15;
  122. extern UBYTE _reg_0x16;
  123. extern UBYTE _reg_0x17;
  124. extern UBYTE _reg_0x18;
  125. extern UBYTE _reg_0x19;
  126. extern UBYTE _reg_0x1A;
  127. extern UBYTE _reg_0x1B;
  128. extern UBYTE _reg_0x1C;
  129. extern UBYTE _reg_0x1D;
  130. extern UBYTE _reg_0x1E;
  131. extern UBYTE _reg_0x1F;
  132. extern UBYTE _reg_0x20;
  133. extern UBYTE _reg_0x21;
  134. extern UBYTE _reg_0x22;
  135. extern UBYTE _reg_0x23;
  136. extern UBYTE _reg_0x24;
  137. extern UBYTE _reg_0x25;
  138. extern UBYTE _reg_0x26;
  139.  
  140. #endif /* _HARDWARE_H */
  141.